<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml"
	xmlns:ui="http://java.sun.com/jsf/facelets"
	xmlns:h="http://java.sun.com/jsf/html"
	xmlns:f="http://java.sun.com/jsf/core"
	xmlns:p="http://primefaces.prime.com.tr/ui"
	xmlns:c="http://java.sun.com/jsp/jstl/core">

<f:view contentType="text/html">

	<h:head>
		<meta content='text/html; charset=UTF-8' http-equiv="Content-Type" />
		<link type="text/css" rel="stylesheet"
			href="#{request.contextPath}/css/default.css" />
			
		<script type="text/javascript">
		
			function validarDoc(tipDoc,doc){
			alert(tipDoc,doc);
				
			
			}
			
			 function Seleccionar(){
			 	  var combo=document.getElementById('clientesFinancieros:tipoDoc');
			 	  var doc=document.getElementById('clientesFinancieros:txtDoc').value;
			      var indice = combo.selectedIndex;
			      var valor = combo.options[combo.selectedIndex].text;
			      
			      if (indice!=0){
				
					if (valor=='DNI'){
						
						if (doc.length!=8){
						
							alert("El Documento debe tener una Longitud de 8 digitos");
							return false;
						}else {
							return true;
						}
					
					}else if (valor=='RUC'){
					
						if (doc.length!=12){
						
							alert("El Documento debe tener una Longitud de 12 digitos");
							return false;
						}else {
							return true;
						}
					}
				
				}
			     
			 }
		
		</script>
	</h:head>

	<h:body>	

		<p:panel header="Clientes Financieros">

			<h:form id="clientesFinancieros">
				
				<fieldset><legend>Datos del Cliente</legend> <h:panelGrid
					columns="3">
					
					<h:outputLabel value="Codigo del Cliente:" />
					<p:inputText value="#{manClienteFinMB.clienteFins.IDE_CLI}"
						readonly="true" />
					<p:spacer width="30px" />

					<h:outputLabel value="Tipo de Documento:" />
					<h:selectOneMenu id="tipoDoc"
						value="#{manClienteFinMB.clienteFins.COD_TIP_DOC_IDE}">
						<f:selectItem itemValue="" itemLabel="Seleccione" />
						<f:selectItems value="#{manClienteFinMB.tipoDocIdent}" />
					</h:selectOneMenu>
					<p:spacer width="30px" />

					<h:outputLabel value="Nro. Documento (*) :" />
					<p:inputText id="txtDoc" value="#{manClienteFinMB.clienteFins.NUM_DOC_IDE}"
					onblur="Seleccionar();"
						required="true" requiredMessage="Este Campo es Obligatorio" >
					</p:inputText>
					<p:spacer width="30px" />

					<h:outputLabel value="Primer Nombre (*) :" />
					<p:inputText value="#{manClienteFinMB.clienteFins.DSC_PRI_NOM_CLI}"
						required="true" requiredMessage="Este Campo es Obligatorio"
						size="40" validatorMessage="Solo Numeros y Letras"
						id="txtPrimerNom">
						<f:validateRegex pattern="[A-Za-z0-9 ]*" />
					</p:inputText>
					<p:message for="txtPrimerNom" />

					<h:outputLabel value="Segundo Nombre (*) :" />
					<p:inputText value="#{manClienteFinMB.clienteFins.DSC_SEG_NOM_CLI}"
						size="40" validatorMessage="Solo letras" id="txtSegundoNom">
						<f:validateRegex pattern="[A-Za-z ]*" />
					</p:inputText>
					<p:message for="txtSegundoNom" />

					<h:outputLabel value="Apellido Paterno (*) :" />
					<p:inputText value="#{manClienteFinMB.clienteFins.DSC_APE_PAT_CLI}"
						required="true" requiredMessage="Este Campo es Obligatorio"
						size="40" validatorMessage="Solo letras" id="txtPaterno">
						<f:validateRegex pattern="[A-Za-z ]*" />
					</p:inputText>
					<p:message for="txtPaterno" />

					<h:outputLabel value="Apellido Materno (*) :" />
					<p:inputText value="#{manClienteFinMB.clienteFins.DSC_APE_MAT_CLI}"
						required="true" requiredMessage="Este Campo es Obligatorio"
						size="40" validatorMessage="Solo letras" id="txtMaterno">
						<f:validateRegex pattern="[A-Za-z ]*" />
					</p:inputText>
					<p:message for="txtMaterno" />

					<h:outputLabel value="Razon Social :" />
					<p:inputText size="40"
						value="#{manClienteFinMB.clienteFins.NOM_RAZ_SOC}" />
					<p:spacer width="30px" />

					<h:outputLabel value="E-mail: (*)" />
					<p:inputText value="#{manClienteFinMB.clienteFins.DSC_MAIL}"
						id="txtEmail" size="40"
						requiredMessage="Este Campo es Obligatorio"
						validatorMessage="Debe Ingresar un Email">
						<f:validateRegex
							pattern="^(([A-Za-z0-9]+_+)|([A-Za-z0-9]+\-+)|([A-Za-z0-9]+\.+)|([A-Za-z0-9]+\++))*[A-Za-z0-9]+@((\w+\-+)|(\w+\.))*\w{1,63}\.[a-zA-Z]{2,6}$" />
					</p:inputText>
					<p:message for="txtEmail" />

					<h:outputLabel value="Telefono1 :" />
					<p:inputText value="#{manClienteFinMB.clienteFins.NUM_TEL_MOV_1}"
						validatorMessage="Solo Numeros" id="txtTelefono1">
						<f:validateRegex pattern="[0-9 ]*" />
					</p:inputText>
					<p:message for="txtTelefono1" />

					<h:outputLabel value="Telefono2 :" />
					<p:inputText value="#{manClienteFinMB.clienteFins.NUM_TEL_MOV_2}"
						validatorMessage="Solo Numeros" id="txtTelefono2">
						<f:validateRegex pattern="[0-9 ]*" />
					</p:inputText>
					<p:message for="txtTelefono2" />
				
				</h:panelGrid> <h:panelGrid columns="4">
					<p:commandButton value="#{message['save']}" onclick="return Seleccionar();"
						action="#{manClienteFinMB.guardarCliente}" ajax="false" />
					<p:commandButton value="#{message['add.Dir']}" rendered="#{manClienteFinMB.edit}"
						action="#{manClienteFinMB.nuevaDireccion}"
						oncomplete="FrmDireccion.show();" ajax="true"
						update="clientesFinancieros:panelFormDir" />
					<p:commandButton value="#{message['list']}"
						action="#{manClienteFinMB.cancelar}" ajax="false" />						
				</h:panelGrid></fieldset>
				<br></br>
				<c:if test="#{manClienteFinMB.edit}">
				<fieldset><legend>Datos del Cliente</legend> <br></br>
				<p:outputPanel id="panelListadoDir">
				<p:dataTable value="#{manClienteFinMB.clienteFins.listDirCliFin}"
					id="tablaDirClienteF" var="dir" paginator="true" rows="10"
					paginatorTemplate="   {PreviousPageLink} {CurrentPageReport} {NextPageLink} "
					rowsPerPageTemplate="5,10,15" style="width:1000px">
					<p:column>
						<f:facet name="header">
							<h:outputText value="Cod." />
						</f:facet>
						<h:outputText value="#{dir.SEC_DIR}"></h:outputText>
					</p:column>
					<p:column>
						<f:facet name="header">
							<h:outputText value="Direccion" />
						</f:facet>
						<h:outputText value="#{dir.DSC_DIR}"></h:outputText>
					</p:column>
					<p:column>
						<f:facet name="header">
							<h:outputText value="Referencia" />
						</f:facet>
						<h:outputText value="#{dir.DSC_REF_DIR}"></h:outputText>
					</p:column>
					<p:column>
						<f:facet name="header">
							<h:outputText value="Dir. Principal" />
						</f:facet>
						<h:selectBooleanCheckbox disabled="true"								
								value="#{dir.flagDireccion}" />
					</p:column>
					<p:column>
						<f:facet name="header">
							<h:outputText value="Acciones" />
						</f:facet>
						<p:commandLink oncomplete="FrmDireccion.show();" ajax="true" 
							action="#{manClienteFinMB.editarDireccion}"
							update="clientesFinancieros:panelFormDir,clientesFinancieros:FrmDireccion">
							<h:graphicImage value="/imagen/Edit.gif" alt="Editar" />
							<f:setPropertyActionListener
								target="#{manClienteFinMB.SEC_DIR}" value="#{dir.SEC_DIR}" />
								<p:ajax listener="#{manClienteFinMB.editarDireccion}"
									update=":panelFormDir,FrmDireccion,panelListadoDir" />
						</p:commandLink>
						<p:commandLink  onclick="MensajeEliminar.show();"  ajax="true" update="panelListadoDir">
							<h:graphicImage value="/imagen/Delete.png" alt="Eliminar" />
							<f:setPropertyActionListener target="#{manClienteFinMB.SEC_DIR}"
								value="#{dir.SEC_DIR}" />
						</p:commandLink >
					</p:column>
				</p:dataTable>
				</p:outputPanel>
				</fieldset>
				</c:if>
				
				<p:dialog header="Direccion de Cliente" widgetVar="FrmDireccion"
					visible="#{manClienteFinMB.visibleDialog}" modal="true"
					height="520" width="620" resizable="false" >
					
					<p:outputPanel id="panelFormDir">
						<h:panelGrid columns="3" id="direccion">
						
							<h:outputLabel value="Codigo del Cliente:" />
							<p:inputText value="#{manClienteFinMB.clienteFins.IDE_CLI}"
								readonly="true" />
							<p:spacer width="10px" />
							

							<h:outputLabel value="Departamento (*):" />
							<h:selectOneMenu id="departamento"
								value="#{manClienteFinMB.dirCienteFins.COD_DEP}">
								<f:selectItem itemValue="" itemLabel="Seleccione" />
								<f:selectItems value="#{manClienteFinMB.departamentos}" />
								<p:ajax listener="#{manClienteFinMB.cargarProvincias}"
									update="provincia" />
							</h:selectOneMenu>
							<p:spacer width="10px" />

							<h:outputLabel value="Provincia (*):" />
							<h:selectOneMenu id="provincia"
								value="#{manClienteFinMB.dirCienteFins.COD_PRVI}">
								<f:selectItem itemValue="" itemLabel="Seleccione" />
								<f:selectItems value="#{manClienteFinMB.provincias}" />
								<p:ajax listener="#{manClienteFinMB.cargarDistritos}"
									update="distrito" />
							</h:selectOneMenu>
							<p:spacer width="10px" />

							<h:outputLabel value="Distrito (*):" />
							<h:selectOneMenu id="distrito"
								value="#{manClienteFinMB.dirCienteFins.COD_DIST}">
								<f:selectItem itemValue="" itemLabel="Seleccione" />
								<f:selectItems value="#{manClienteFinMB.distritos}" />
							</h:selectOneMenu>
							<p:spacer width="10px" />

							<h:outputLabel value="Cod. Direccion:" />
							<p:inputText value="#{manClienteFinMB.dirCienteFins.SEC_DIR}"
								readonly="true" />
							<p:spacer width="10px" />

							<h:outputLabel value="Direccion (*):" />
							<p:inputText value="#{manClienteFinMB.dirCienteFins.DSC_DIR}"
								size="40" />
							<p:spacer width="10px" />

							<h:outputLabel value="Via :" />
							<h:selectOneMenu id="Via"
								value="#{manClienteFinMB.dirCienteFins.COD_VIA}">
								<f:selectItem itemValue="" itemLabel="Seleccione" />
								<f:selectItems value="#{manClienteFinMB.vias}" />
							</h:selectOneMenu>
							<p:spacer width="10px" />

							<h:outputLabel value="Nombre Via :" />
							<p:inputText value="#{manClienteFinMB.dirCienteFins.NOM_VIA}" />
							<p:spacer width="10px" />
							
							<h:outputLabel value="Nro. de Direccion (*):" />
							<p:inputText value="#{manClienteFinMB.dirCienteFins.DSC_NUM_DIR}"
								size="10" />
							<p:spacer width="10px" />							
							
							<h:outputLabel value="Cod. Int. Dir :" />
							<h:selectOneMenu id="codIntDir"
								value="#{manClienteFinMB.dirCienteFins.COD_INT_DIR}">
								<f:selectItem itemValue="" itemLabel="Seleccione" />
								<f:selectItems value="#{manClienteFinMB.codigoIntDir}" />
							</h:selectOneMenu>
							<p:spacer width="10px" />							
							
							<h:outputLabel value="Desc. Nro. Int :" />
							<p:inputText value="#{manClienteFinMB.dirCienteFins.DSC_NUM_INT}" />
							<p:spacer width="10px" />

							<h:outputLabel value="Ref. Direccion (*):" />
							<p:inputText value="#{manClienteFinMB.dirCienteFins.DSC_REF_DIR}"
								size="40" />
							<p:spacer width="10px" />

							<h:outputLabel value="Num. Telefono :" />
							<p:inputText value="#{manClienteFinMB.dirCienteFins.NUM_TEL}" />
							<p:spacer width="10px" />

							<h:outputLabel value="Num. Anexo:" />
							<p:inputText value="#{manClienteFinMB.dirCienteFins.NUM_ANX}" />
							<p:spacer width="10px" />
							
							<h:outputLabel value="Direccion Principal:" />
							<h:selectBooleanCheckbox
								value="#{manClienteFinMB.dirCienteFins.flagDireccion}" />
							<p:spacer width="10px" />
							<p:commandButton value="#{message['save']}" id="btnSave"
								action="#{manClienteFinMB.guardarDireccion}"
								ajax="true" oncomplete="FrmDireccion.hide();"
								update="clientesFinancieros:panelListadoDir,clientesFinancieros:lblMensaje,
								clientesFinancieros:panelFormDir,clientesFinancieros:btnSave" />
							<p:commandButton value="#{message['cancel']}" update="panelFormDir"
								oncomplete="FrmDireccion.hide();" ajax="true" >
							</p:commandButton>
							<h:outputLabel id="lblMensaje" value="#{manClienteFinMB.mensaje}" style="color:red" />
						</h:panelGrid>
					</p:outputPanel>
					
				</p:dialog>

				<p:dialog header="Informacion" widgetVar="MensajeSave" modal="true"
					height="80" width="220" resizable="false">
					<h:outputLabel value="#{manClienteFinMB.mensaje}" />
				</p:dialog>
				
				<p:dialog header="Confirmacion" widgetVar="MensajeEliminar" modal="true" height="120" 
				width="250" resizable="false">
						<h:outputLabel value="¿Desea Eliminar este Registro?" />
						<p:spacer height="20px" />
						<p:commandButton value="#{message['delete']}" ajax="true" update="panelListadoDir"
							action="#{manClienteFinMB.eliminarDireccion}" oncomplete="MensajeEliminar.hide();"/>
						<p:commandButton value="#{message['cancel']}"
							 oncomplete="MensajeEliminar.hide();" ajax="true" />
				</p:dialog>

			</h:form>

		</p:panel>

	</h:body>
</f:view>
</html>